package com.example.demo.dto;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.List;

/**
 * 菜品制作信息响应数据传输对象
 * 用于返回菜品的制作配料和制作方法
 * 
 * @author AI Demo
 * @version 1.0
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
public class RecipeResponse {
    
    /** 菜品名称 */
    private String dishName;
    
    /** 制作配料列表 */
    private List<String> ingredients;
    
    /** 制作方法步骤列表 */
    private List<String> methods;
    
    /** AI原始回复内容 */
    private String originalResponse;
    
    /** 响应生成的时间戳（毫秒） */
    private long timestamp;
    
    /**
     * 便捷构造器，用于创建基本的菜品制作信息响应
     * 自动设置当前时间戳
     * 
     * @param dishName 菜品名称
     * @param ingredients 制作配料列表
     * @param methods 制作方法步骤列表
     * @param originalResponse AI原始回复内容
     */
    public RecipeResponse(String dishName, List<String> ingredients, List<String> methods, String originalResponse) {
        this.dishName = dishName;
        this.ingredients = ingredients;
        this.methods = methods;
        this.originalResponse = originalResponse;
        this.timestamp = System.currentTimeMillis();
    }
}